package com.ruoyi.system.domain;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 促销活动对象 super_promotion
 * 
 * @author xjf
 * @date 2025-08-13
 */
public class SuperPromotion extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 促销活动id */
    @Excel(name = "促销活动id")
    private Long id;

    /** 活动类型， 关联活动表 */
    @Excel(name = "活动类型， 关联活动表")
    private Long type;

    /** 商品id */
    @Excel(name = "商品id")
    private Long productId;

    /** 活动值（如满减金额/折扣） */
    @Excel(name = "活动值", readConverterExp = "如=满减金额/折扣")
    private BigDecimal value;

    /** 是否删除 0正常 1删除 */
    private Long del;
    /** 关联对象：活动类型 */
    private SuperActivityType activityType;

    /** 关联对象：商品 */
    private SuperProduct product;
    public void setId(Long id) 
    {
        this.id = id;
    }

    public SuperActivityType getActivityType() {
        return activityType;
    }

    public void setActivityType(SuperActivityType activityType) {
        this.activityType = activityType;
    }

    public SuperProduct getProduct() {
        return product;
    }

    public void setProduct(SuperProduct product) {
        this.product = product;
    }

    public Long getId()
    {
        return id;
    }

    public void setType(Long type) 
    {
        this.type = type;
    }

    public Long getType() 
    {
        return type;
    }

    public void setProductId(Long productId) 
    {
        this.productId = productId;
    }

    public Long getProductId() 
    {
        return productId;
    }

    public void setValue(BigDecimal value) 
    {
        this.value = value;
    }

    public BigDecimal getValue() 
    {
        return value;
    }

    public void setDel(Long del) 
    {
        this.del = del;
    }

    public Long getDel() 
    {
        return del;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("type", getType())
                .append("productId", getProductId())
                .append("value", getValue())
                .append("del", getDel())
                .append("activityType", activityType != null ? activityType.toString() : "null")
                .append("product", product != null ? product.toString() : "null")
                .toString();
    }
}
